home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 24 / AACD 24.iso / AACD / Programming / mhi_dev / Blitz / MHIfunctions.asc
Encoding:
Text File  |  2001-08-02  |  2.8 KB  |  157 lines

  1.  
  2.  
  3. ;## MHI CONSTANTS AND FUNCTIONS FOR USE WITH ANY MHI LIBRARY ##
  4. ;##                                                          ##
  5. ;## just use  *MhiBase=openlibrary_(libname,0) BEFORE use    ##
  6. ;## and dont forget  closelibrary_(*MhiBase) before you quit ##
  7.  
  8.  
  9.  
  10. #MHIP_VOLUME=0
  11. #MHIP_PANNING=1
  12. #MHIP_CROSSMIXING=2
  13. #MHIP_BASS=3
  14. #MHIP_MID=4
  15. #MHIP_TREBLE=5
  16. #MHIP_PREFACTOR=6
  17.  
  18.  
  19. #MHIF_PLAYING=0
  20. #MHIF_STOPPED=1
  21. #MHIF_OUT_OF_DATA=2
  22. #MHIF_PAUSED=3
  23.  
  24. #MHIQ_DECODER_NAME=1000
  25. #MHIQ_DECODER_VERSION=1001
  26. #MHIQ_AUTHOR=1002
  27.  
  28. #MHIQ_IS_HARDWARE=1010
  29. #MHIQ_IS_68K=1011
  30. #MHIQ_IS_PPC=1012
  31.  
  32. #MHIQ_MPEG1 =1
  33. #MHIQ_MPEG2 =2
  34. #MHIQ_MPEG25=3
  35. #MHIQ_MPEG4 =4
  36.  
  37. #MHIQ_LAYER1 =10
  38. #MHIQ_LAYER2 =11
  39. #MHIQ_LAYER3 =12
  40.  
  41. #MHIQ_VARIABLE_BITRATE=20
  42. #MHIQ_JOINT_STEREO=21
  43.  
  44. #MHIQ_BASS_CONTROL  =30
  45. #MHIQ_TREBLE_CONTROL=31
  46. #MHIQ_MID_CONTROL   =32
  47. #MHIQ_PREFACTOR_CONTROL= 33
  48. #MHIQ_VOLUME_CONTROL=40
  49. #MHIQ_PANNING_CONTROL=41
  50. #MHIQ_CROSSMIXING_CONTROL  =42
  51.  
  52. ;## MHI LIBRARY OFFSETS ##
  53.  
  54. #MHILIB_ALLOCDECODER=30
  55. #MHILIB_FREEDECODER=36
  56. #MHILIB_QUEUEBUFFER=42
  57. #MHILIB_GETEMPTY=48
  58. #MHILIB_GETSTATUS=54
  59. #MHILIB_PLAY=60
  60. #MHILIB_STOP=66
  61. #MHILIB_PAUSE=72
  62. #MHILIB_QUERY=78
  63. #MHILIB_SETPARAM=84
  64.  
  65.  
  66.  
  67.  
  68. DEFTYPE .Library *MhiBase
  69.  
  70. ;## THE MHI FUNCTIONS ###
  71.  
  72. Function.l MHIAllocDecoder{task.l,mask.l}
  73. SHARED *MhiBase
  74.     GetReg a0,task.l
  75.     GetReg d0,mask.l
  76.     GetReg a6,*MhiBase
  77.     JSR -#MHILIB_ALLOCDECODER(a6)
  78.     AsmExit
  79. End Function
  80.  
  81. Statement MHIFreeDecoder{mhihandle.l}
  82. SHARED *MhiBase
  83.   GetReg a3,mhihandle.l
  84.   GetReg a6,*MhiBase
  85.   JSR -#MHILIB_FREEDECODER(a6)
  86.   AsmExit
  87. End Statement
  88.  
  89.  
  90. Function.b MHIQueueBuffer{mhihandle.l,buffaddr.l,size.l}
  91. SHARED *MhiBase
  92.     GetReg a3,mhihandle.l
  93.     GetReg a0,buffaddr.l
  94.     GetReg d0,size.l
  95.     GetReg a6,*MhiBase
  96.     JSR -#MHILIB_QUEUEBUFFER(a6)
  97.     AsmExit
  98. End Function
  99.  
  100. Function.l MHIGetEmpty{mhihandle.l}
  101. SHARED *MhiBase
  102.     GetReg a3,mhihandle.l
  103.     GetReg a6,*MhiBase
  104.     JSR -#MHILIB_GETEMPTY(a6)
  105.     AsmExit
  106. End Function
  107.  
  108. Function.b MHIGetStatus{mhihandle.l}
  109. SHARED *MhiBase
  110.     GetReg a3,mhihandle.l
  111.     GetReg a6,*MhiBase
  112.     JSR -#MHILIB_GETSTATUS(a6)
  113.     AsmExit
  114. End Function
  115.  
  116. Statement MHIPlay{mhihandle.l}
  117. SHARED *MhiBase
  118.     GetReg a3,mhihandle.l
  119.     GetReg a6,*MhiBase
  120.     JSR -#MHILIB_PLAY(a6)
  121.     AsmExit
  122. End Statement
  123.  
  124. Statement MHIStop{mhihandle.l}
  125. SHARED *MhiBase
  126.     GetReg a3,mhihandle.l
  127.     GetReg a6,*MhiBase
  128.     JSR -#MHILIB_STOP(a6)
  129.     AsmExit
  130. End Statement
  131.  
  132. Statement MHIPause{mhihandle.l}
  133. SHARED *MhiBase
  134.     GetReg a3,mhihandle.l
  135.     GetReg a6,*MhiBase
  136.     JSR -#MHILIB_PAUSE(a6)
  137.     AsmExit
  138. End Statement
  139.  
  140. Function.l MHIQuery{query.l}
  141. SHARED *MhiBase
  142.     GetReg d1,query.l
  143.     GetReg a6,*MhiBase
  144.     JSR -#MHILIB_QUERY(a6)
  145.     AsmExit
  146. End Function
  147.  
  148. Statement MHISetParam{mhihandle.l,param.w,value.l}
  149. SHARED *MhiBase
  150.      GetReg a3,mhihandle.l
  151.      GetReg d0,param.w
  152.      GetReg d1,value.l
  153.      GetReg a6,*MhiBase
  154.      JSR -#MHILIB_SETPARAM(a6)
  155.      AsmExit
  156. End Statement
  157.